1. Field
The following description relates to a multimedia pre-processing apparatus and a method for virtual machine in multicore device.
2. Description of the Related Art
A virtual machine (VM) is a technique of executing an application in a device equipped with heterogeneous central processing units (CPUs) and memories.
Code written in a high-level language may be distributed as a script or hardware-independent intermediate code, and may be executed by interpreters or the machine language translators of VMs installed in various devices.
Examples of a virtual machine include a Java virtual machine, which is widely used in mobile phones, digital TVs or the like, a JavaScript whose code is transmitted via the web, and a Dalvik virtual machine.
Various applications may be executed in various embedded devices (such as mobile phones or digital TVs), servers, desktops and the like using virtual machines. However, not all distributed applications use all the CPU resources of devices where they are executed when operating.
Not only servers or desktops but also embedded devices may use multicore CPUs equipped with two or more independent cores.
Multicore devices may execute a plurality of applications at the same time more quickly than single-core devices. In multicore environments, each core may distribute CPU tasks in an operating system (OS).
However, this method may not properly distribute tasks. Thus, effectively distributing tasks in a virtual machine environment is necessary.
An application may include execution code and various multimedia data such as video data, audio data, image data, text and the like. The execution code may define the operation of the application. The application may be executed using the execution code. In response to the application being executed, the multimedia data may be output.
Multimedia data has a relatively large size, and is generally distributed in an encoded form. In order to output the multimedia data, the multimedia data may need to be loaded and decoded before being output. However, the decoding of multimedia data results in a large overhead especially in embedded devices with a limited CPU and a limited amount of memory space.